
//关卡数据示例
export default class LevelDataTemplate {
    private constructor() { }
    public static getData(): any {
        return {
            1: {
                id: 1,
                lv: 1,
                /**关卡地图移动范围(3D逻辑坐标空间) */
                mapScope: {
                    xMin: -100,
                    xMax: 100,
                    yMin: 0,
                    yMax: 1000,
                    zMin: -100,
                    zMax: 100,
                },
                /**玩家初始坐标 */
                playerPos: { x: 0, y: 0, z: 0 },
                //关卡元素
                data: {
                    /**关卡使用的所有地图块 */
                    maps: [
                        {
                            //地图名称，对应预制件名称
                            n: "map1",
                            //坐标
                            p: { x: 0, y: 0, z: 0 },
                            //其他参数
                            m: {},
                        },
                        // {
                        //     //地图名称，对应预制件名称
                        //     n: "map2",
                        //     //坐标
                        //     p: { x: 0, y: 0, z: -70 },
                        //     //其他参数
                        //     m: {},
                        // },
                    ],
                    /**静态障碍物 */
                    staticBarriers: [
                        {
                            //障碍物名称，对应预制件名称
                            n: "",
                            //坐标
                            p: { x: 0, y: 0, z: 0 },
                            //Y轴旋转角度
                            e: 0,
                            //缩放
                            s: { x: 1, y: 1, z: 1 },
                            //其他参数
                            m: {},
                        },
                    ],
                    /**动态障碍物（可破坏障碍物） */
                    dynamicBarriers: [
                        {
                            //障碍物名称，对应预制件名称
                            n: "",
                            //坐标
                            p: { x: 0, y: 0, z: 0 },
                            //Y轴旋转角度
                            e: 0,
                            //缩放
                            s: { x: 1, y: 1, z: 1 },
                            //其他参数
                            m: {},
                        },
                    ],
                    /**敌人 */
                    enemies: [
                        {
                            //敌人预制件名称
                            n: "",
                            //使用的武器类型
                            weaponType: "knife",
                            //使用的武器id
                            weaponId: 1,
                            //ai等级
                            ai: 1,
                            //其他参数，如初始等级等
                            m: {},
                        },
                        {
                            weaponType: "knife",
                            weaponId: 1,
                        },
                        {
                            weaponType: "knife",
                            weaponId: 1,
                        },
                        {
                            weaponType: "knife",
                            weaponId: 1,
                        },
                        {
                            weaponType: "knife",
                            weaponId: 1,
                        },
                        {
                            weaponType: "knife",
                            weaponId: 1,
                        },
                        {
                            weaponType: "knife",
                            weaponId: 1,
                        },
                        {
                            weaponType: "knife",
                            weaponId: 1,
                        },
                        {
                            weaponType: "knife",
                            weaponId: 1,
                        },
                    ],
                    //道具
                    collection: [
                        {
                            //道具名称
                            n: "",
                            //坐标
                            p: {
                                x: 1,
                                y: 1,
                                z: 1,
                            },
                            //角度
                            e: 0,
                        }
                    ],
                    //陷阱
                    trap: [],
                    //其他关卡元素：

                },
            }
        };
    }
}
